package com.iweb.newa202104.service;

import com.iweb.newa202104.dto.ResponseInputDTO;
import com.iweb.newa202104.vo.ResultVO;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.RequestBody;

import javax.servlet.http.HttpSession;

/**
 * @Author: LGZ
 * @Date: 2021/5/12 18:24
 * @Description:
 */
public interface ResponseService {
    /**
     * TODO
     * @Description 评论
     * @Author lgz
     * @Date 2021/5/12 18:24
     * @param httpSession :
     * @param responseInputDTO :
     * @return : com.iweb.newa202104.vo.ResultVO
     */
    ResultVO add(HttpSession httpSession, ResponseInputDTO responseInputDTO);

    /**
     * TODO
     * @Description 获取所有评论，按时间排序
     * @Author lgz
     * @Date 2021/5/12 18:24
     * @param questionId :
     * @return : com.iweb.newa202104.vo.ResultVO
     */
    ResultVO getAll(int questionId);

    /**
     * TODO
     * @Description 获取自己的回答数
     * @Author lgz
     * @Date 2021/5/18 11:40
     * @param httpSession :
     * @return : com.iweb.newa202104.vo.ResultVO
     */
    ResultVO getMyResponseCounts(HttpSession httpSession);

    /**
     * TODO
     * @Description 获取自己的回答
     * @Author lgz
     * @Date 2021/5/19 19:49
     * @param httpSession :
     * @return : com.iweb.newa202104.vo.ResultVO
     */
    ResultVO getMyResponse(HttpSession httpSession);

    /**
     * TODO
     * @Description 删除自己回答
     * @Author lgz
     * @Date 2021/5/19 21:11
     * @param httpSession :
     * @param responseId :
     * @return : com.iweb.newa202104.vo.ResultVO
     */
    ResultVO delete(HttpSession httpSession, int responseId);

    /**
     * TODO
     * @Description 点赞
     * @Author lgz
     * @Date 2021/5/20 11:55
     * @param responseInputDTO :
     * @return : com.iweb.newa202104.vo.ResultVO
     */
    ResultVO giveLike(ResponseInputDTO responseInputDTO);
}
